#pragma once
#ifndef BIGINT 
#define BIGINT
#include <iostream>
#include<vector>
#include<string>
#include<math.h>
#include<algorithm>
class BigInt
{
	public:
		std::vector<int> content;
		void operator = (long long num)
		{
			while(num>0)
			{
				int buf=num%10;
				num/=10;
				content.push_back(buf);
			 }
		}
		void operator = (std::string str)
		{
			for(int i=str.length()-1;i>=0;i--)
			{
				int buf=(int)(str[i]-'0');
				content.push_back(buf);
			}
		}
		BigInt operator + (BigInt bi)
		{
			
			return *this;
		}
		void operator + (long long num)
		{
			BigInt bi;
			bi= num;
			*this+bi;
		}
		void operator - (BigInt bi)
		{

		}
};
std::istream& operator >> (std::istream& in,BigInt &bi)
{
	std::string str;
	if(!(in>>str))
		return in;
	bi=str;
	return in;
}
std::ostream& operator << (std::ostream& out,BigInt &bi)
{
	for(int i=bi.content.size()-1;i>=0;i--)
	{
		out<<bi.content[i];
	}
	return out;
 } 
#endif 
